package opencm;

import java.util.Arrays;
import java.util.List;

import org.joda.time.Duration;

public enum Especialidade {
	JOELHO("Joelho", 20, 60, 180), QUADRIL("Quadril", 20, 60, 180), TORNOZELO("Tornozelo", 20, 60, 180), OMBRO(
			"Ombro", 20, 60, 180), PUNHO("Punho", 20, 60, 180);

	private final String desc;
	private final Duration duracaoConsultaRetorno;
	private final Duration duracaoPrimeiraConsulta;
	private final Duration duracaoCirugia;

	Especialidade(String desc, int duracaoConsultaRetorno, int duracaoConsultaPrimeira, int duracaoCirugia) {
		this.desc = desc;
		this.duracaoConsultaRetorno = Duration.standardMinutes(duracaoConsultaRetorno);
		this.duracaoPrimeiraConsulta = Duration.standardMinutes(duracaoConsultaPrimeira);
		this.duracaoCirugia = Duration.standardMinutes(duracaoCirugia);
	}

	@Override
	public String toString() {
		return this.desc;
	}

	public Duration getDuracaoConsultaRetorno() {
		return this.duracaoConsultaRetorno;
	}

	public Duration getDuracaoPrimeiraConsulta() {
		return this.duracaoPrimeiraConsulta;
	}

	public Duration getDuracaoCirugia() {
		return this.duracaoCirugia;
	}

	public static List<Especialidade> toList() {
		return Arrays.asList(values());
	}
}